Software copy protection is a central concern in software development, and in copyright law itself. Typically, software is distributed in shrink-wrap packages containing diskettes and/or CD-ROMs, and by download over the Internet via ftp servers. Protecting software from rampant unauthorized copying, distribution and use (“software piracy”) is one of the most challenging problems facing the software industry.
Over the past years, several techniques have been developed for combating software piracy. These include use of hardware plugs, use of license keys, use of tokens and sophisticated encryption systems.
One of the leading technologies for controlling use of software within turnkey transaction systems is the Digital Rights Management system of InterTrust® Technologies Corp. of Sunnyvale, Calif., as described in U.S. Pat. Nos. 5,892,900, 5,410,598, 5,050,213, 4,977,594 and 4,827,508. Information about InterTrust is available on the web at http://www.intertrust.com.
Another leading technology is the CyberSales Solution™ of SoftLock.com, Inc. of Maynard, Mass., as described in U.S. Pat. No. 5,509,070. CyberSales Solution provides locking and unlocking functionality so that content can be securely previewed by consumers, electronically purchased and redistributed, and it protects the content in an initial transaction and in subsequent information pass-along. Content providers can control how much information is available without paying, and disable, or additionally charge for, the ability to print or cut and paste. CyberSales Solution handles secure transactions, remittance processing, reports, audits and customer service. Information about CyberSales Solution is available on the web at http://www.softlock.com.
With the advent of the use of compelling multi-media on web pages accessible over the Internet, protection of digital images and other media is becoming increasingly critical. Web designers are reluctant to use valuable digital “works of art” knowing that users can easily copy them onto their own computers, and use them for their own unauthorized purposes. Moreover, anyone using a web browser to view an image posted on the Internet can easily copy the image by simply positioning a mouse pointer over the displayed image, clicking on the right mouse button and selecting a “Save Image As . . . ” command. Copyright and piracy issues are of major concern to web publishers.
Prior art techniques for protecting digital images include the embedding of invisible digital watermarks within images, so that copies of protected images can be identified and traced. Digimarc Corporation of Lake Oswego, Oreg. embeds hidden messages within pixel data for identifying protected images, and tracks their distribution over the Internet to monitor potential copyright infringement. Digimarc images carry unique IDs that link to pre-determined locations on the web. Digimarc images are compatible with standard image formats, such as JPEG, and can be opened and displayed by standard image readers. However, when opened with a Digimarc reader, the images are displayed together with a “Web look up” button that enables a user to identify the sources of the images. Digimarc technology is described in U.S. Pat. Nos. 5,862,260, 5,850,481, 5,841,978, 5,841,886, 5,832,119, 5,822,436, 5,809,160, 5,768,426, 5,765,152, 5,748,783, 5,748,763, 5,745,604, 5,721,788, 5,710,834 and 5,636,292. Information about Digimarc is available on the web at http://www.digimarc.com.
These techniques are useful in thwarting digital image piracy to the extent that they trace pirated content, but they do not prevent unauthorized copying of digital images in the first place.
Other prior art techniques require a webmaster to modify images residing on a server computer in order to protect them. The webmaster is also required to modify his web pages accordingly, so as to reference the modified images. SafeMedia™ is a software product of Internet Expression, Inc. of Exton, Pa. that converts images from a standard format such as JPEG into a SIF (Safe Image Format). SIF images can only be viewed with a SafeMedia Java viewer. SafeMedia embeds a host or domain name into an image, and checks that the image is located on the web site it was intended for. SafeMedia also includes enhanced system control for preventing screen capture by disabling a clipboard. Information about SafeMedia is available on the web at http://www.safemedia.com.
These prior art techniques are difficult to embrace, since they require modification of all protected images on the web, as well as modification of the web pages that reference them. Furthermore the SIF Java viewer has the limitation of only being able to load images from the same server that the viewer came from.
Other prior art techniques for protecting digital images use Java applets within web browsers to disable the menu that pops up when a user right clicks on a displayed image within his web browser. Copysight® is a software application of Intellecutal Protocols, LLC of Nanuet, N.Y. that uses digital watermarking and fingerprinting to protect images, and includes a Java applet that disables the command to save displayed images within a web browser and the command to print them. Copysight operates by converting unprotected files to protected files that are encrypted and that contain digital fingerprints. Copysight also tracks distribution of protected images across the Internet, and issues reports of potential copyright infringement. Information about Copysight is available on the web at http://www.ip2.com.
Typically, when a digital image is displayed on a computer monitor, the pixel data is temporarily stored within a video RAM, the contents of which are then rendered on the monitor. Prior art techniques disable unauthorized copying of digital images from within web browsers, but they do not protect the images from being copied directly from a video RAM. For example, they do not prevent a user from copying digital images displayed in his web browser by means of a Print Screen or other such command that serves to capture contents of a video RAM to a clipboard. Thus a Java applet that prevents unauthorized copying of digital images from within Netscape Communicator of Internet Explorer can be circumvented by a user pressing on a Print Screen button of his keyboard, or by a user copying and pasting from a window of his web browser to a window of another software application.
Another way for a user to copy data from a video RAM within the Microsoft Windows® operating system is by use of a “transparent window” which does not erase its background. A transparent window is one that does not have its own background painted on it. Such a window, when opened on a screen, shows the contents of the screen transparently within it. That is, only its window frame appears on the screen, and the contents of the display appear through the window area within the frame. Although such a transparent window appears genuinely transparent, in fact the contents of the screen are copied and used as the background for the window. This is apparent when a user moves such a transparent window to a new location on the screen. When the window is moved, the previous portion of the screen appears in the window's new location.
Thus it can be appreciated that a user can copy an image displayed on a computer monitor by simply opening a transparent window and positioning it so that its frame encompasses the desired image. The contents of the display screen within the frame are copied into the background of the window, making it possible for a user to then capture the contents, including the desired image.
Specifically, reference is made to FIG. 1, which is a prior art illustration of a proprietary digital image 100. Typically, when image 100 is posted on a web page, such as HTML page 150 (FIG. 2) residing on a server computer, and displayed by a web browser running on a client computer, a user can copy image 100 to his local computer.
Applicant's four co-pending applications    (i) U.S. Ser. No. 09/313,067, filed on May 17, 1999 and entitled METHODS AND APPARATUS FOR PREVENTING REUSE OF TEXT, IMAGES AND SOFTWARE TRANSMITTED VIA NETWORKS;    (ii) U.S. Ser. No. 09/397,331, filed Sep. 14, 1999 and entitled METHOD AND SYSTEM FOR COPYRIGHT PROTECTION OF DIGITAL IMAGES TRANSMITTED OVER NETWORKS;    (iii) U.S. Ser. No. 09/459,493, filed on Dec. 13, 1999 and entitled METHOD AND SYSTEM FOR COPYRIGHT PROTECTION OF DIGITAL IMAGES TRANSMITTED OVER NETWORKS; and    (iv) U.S. Ser. No. 09/493,023, filed on Jan. 27, 2000 and entitled METHOD AND SYSTEM FOR CONTENT COMMERCIALIZATIONconcern technology for preventing unauthorized copying of images.
Reference is now made to FIG. 2, which is an illustration of the results of a screen capture when proprietary digital image 100 is being displayed on the screen, and when copy protection technology from the above referenced patent applications is deployed. When a screen capture application tries to copy pixel data of proprietary digital image 100, watermarked image data is substituted for proprietary digital image 100. Using the technology described in the above-referenced patent applications, a web administrator can ensure that when a user tries to copy image 100 from within web page 150, another image, such as watermarked image 200, is substituted for image 100 prior to capture of image pixel data. Thus, although image 100 is displayed on a computer screen, a screen capture program will only be able to capture pixels of image 200.
Reference is now made to FIG. 3, which is a prior art illustration of a transparent window 300 with a non-erase background. Although a typical Windows application immediately erases its main window, this is not necessary, and it is possible to write an application that does not erase its background. At first glance, window 300 appears to be transparent, with no background. However, this is not the case.
Reference is now made to FIG. 4, which is a prior art illustration of transparent window 300 when it is moved to another location, revealing that it had copied a part of the screen display into its background when it was opened in its previous position. Indeed, as can be seen in FIG. 4, window 300 is not really transparent, but rather has a background that coincides with the pixel data from the position where it was originally opened.
Reference is now made to FIGS. 5A-5D, which illustrate steps for creating an application having a window with a non-erase background, such as transparent window 300 (FIG. 3), using a Microsoft Visual C++ compiler wizard. FIGS. 5A-5D are representative images of user interface screens from Microsoft Visual C++ version 6. The first step is to create a new Microsoft Foundation Class (MFC) AppWizard (exe) project, as illustrated by element 510 in window 520 entitled “New” in FIG. 5A, used for creating new projects. After selecting such an MFC project, the user clicks “OK”, then successively clicks on “Next>” and finally on “Finish”, through to the end of the program. The next step is to add a new WM_ERASEBKGND Windows message handler to the View, as illustrated by element 530 in window 540 entitled “New Windows Message and Event Handlers for class CNoeraseView” in FIG. 5B. After adding such a message handler to the View, the user clicks on “Add”. The next step is to click on “Edit”, in order to modify the message handler code. Specifically, the user changes message handler code from that illustrated in FIG. 5C to that illustrated in FIG. 5D. The last step is to compile the application. When the application is run, it will generate a transparent window such as transparent window 300.
The complete software listing for the application generated by the above steps is provided in Appendix A.
Such a transparent window as transparent window 300 can be used to capture proprietary image data from a computer screen. Reference is now made to FIG. 6, which is a prior art illustration of use of a transparent window to copy proprietary digital image 100 from a web page 150. Transparent window 600 is sized and positioned so that it includes proprietary digital image 100 within its frame when it is opened. Window 600 appears to be transparent, and digital image 100 shows through its frame. However, the pixel data that shows through window 600 is actually copied into its background.
Reference is now made to FIG. 7, which is a prior art illustration of a screen capture of a screen in which transparent window 600 has been moved to another location, when copy protection technology from the above referenced patent applications is deployed. As can be seen from FIG. 7, window 600 has copied proprietary digital image 100 into its background. As can be further seen from FIG. 7, the proprietary digital image was recognized as being within web page 150 and watermarked data was substituted therefor. However, it was not recognized as being within transparent window 600, and watermarked data was not substituted therefor. The screen capture succeeded in capturing proprietary image 100 within transparent window 600.
Reference is now made to FIG. 8, which is a prior art illustration of a software paint program 800 that has copied the clipboard from FIG. 7 into its own window, thereby capturing proprietary digital image 100. At this stage, the user has unrestricted access to proprietary digital image 100.
Thus it can be seen that use of a transparent window with a non-erase background works around security software that normally protects proprietary image data that is displayed from being captured, and, as such, it poses a threat to copy protection of image data over the Internet.